热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

电流|节拍_WiFi通信模块如何实现低功耗工作

篇首语:本文由编程笔记#小编为大家整理,主要介绍了WiFi通信模块如何实现低功耗工作相关的知识,希望对你有一定的参考价值。A51系列是2.4G频段的WIFI模块ÿ

篇首语:本文由编程笔记#小编为大家整理,主要介绍了WiFi通信模块如何实现低功耗工作相关的知识,希望对你有一定的参考价值。


A51系列是2.4G频段的WIFI模块,基于乐鑫ESP8266EX为核心处理器,并符合IEEE 802.11 b/g/n(HT20)协议规范。
RF信号最大功率约+20dBm,提供3种版本:板载天线、IPEX连接器和半孔引脚,均采用1.27mm间距的半孔引脚的SMD封装,重量轻,体积小,方便集成。

模块引出芯片全部IO,可根据应用场景自行开发固件。


多种功耗模式

A51支持多种功耗模式:灵敏模式、普通模式、省电模式、超省模式、睡眠模式、深度睡眠模式。
适用更多不同场景,低功耗模式延长使用寿命。

1.灵敏模式(Active 模式):模块的工作主频为 160MHz,模块全速运行,模块不做任何省电操作,因此此模式下模块工作最灵敏,性能最优,响应速度最快,数据传输延迟最低。

2.普通模式:模块主频降低为80MHz,其他和灵敏模式一致。此模式下数据收发流畅,延迟小。

3.省电模式:模块主频为 80MHz,CPU一直保持工作状态,可以响应外部的所有输入,模块的无线部分会跟随连接的路由器的DTIM Beacon节拍睡眠和醒来,因此不会丢失网络下发的数据和模块上传的数据,用户可以在任何时间从串口输入透传数据,数据不会丢失,用户数据会在无线醒来期间发送到网络端。

4.超省模式:模块主频为 80MHz,CPU和无线部分一同跟随连接的路由器的DTIM Beacon节拍睡眠和醒来,因此不会丢失网络下发的数据和模块上传的数据。所以在睡眠期间的所有输入,CPU将都不能响应。
如果用户在睡眠期间向串口发送数据,那么这些数据将丢失,用户在此模式下想要发送数据到网络端,需要重复提交数据,以达到数据在模块醒来期间被收到的目的。
网络端下发的数据,模块将会在醒来期间发送给串口设备,因此,网络端下发的数据将不会丢失。

5.睡眠模式:模块的主频为 80MHz,睡眠期间模块将关闭 CPU 和无线,因此睡眠期间模块不能收到网络端的数据。用户可以设置模块在网络连接成功,并且没有接收和发送任何数据开始计时多长时间进入睡眠,也可以设置模块从睡眠开始多长时间自动醒来,如果用户想要模块一直睡眠,直到串口有数据才被唤醒,那么可以将醒来时间设置为 268436ms(即最大值)。
模块在睡眠期间 CPU 停止工作,不会响应外部中断,用户如果想要发送数据,可以先从串口发送一个唤醒包,然后等待 CHSTA 引脚输出低电平,用户再将要发送的数据从串口输入,这样数据就不会丢失。
睡眠模式下,为了让功耗尽量降低,用户可以配置模块在睡眠期间是否保持 GPIO 的输出状态,如果睡眠期间GPIO 不输出,那么 GPIO 将变为高阻态。

6.深度睡眠模式:在深度睡眠模式下,模块主频为80MHz,深度睡眠期间模块将关闭 CPU 和无线,因此深度睡眠期间模块不能收到网络端的数据。
用户可以设置模块在网络连接成功,并且没有接收和发送任何数据开始计时多长时间进入深度睡眠,也可以设置模块从深度睡眠开始多长时间自动醒来,如果用户想要模块一直处于深度睡眠,直到通过外部被唤醒,那么可以将醒来时间设置为 268436ms(即最大值)。
模块在深度睡眠期间 CPU 停止工作,不会响应外部的所有输入,用户如果想要发送数据,只能通过模块复位让模块重新运行。如果用户设置了醒来时间,那么模块会 在时间到时自动复位重新运行。
深度睡眠模式下,为了让功耗降到最低,用户可以配置模块在深度睡眠期间是否保持 GPIO 的输出状态,如果睡眠期间 GPIO 不输出,那么 GPIO 将变为高阻态。

这些模式只有模块工作在透传模式下才起作用,在配置模式和 Smartconfig 模式下被使用。可以根据现场情况,选择使用不同的模式,来达到最佳效果。


低功耗管理

1.Modem-Sleep模式
CPU工作,Wi-Fi射频处于省电状态,随WiFi协议定时唤醒。
Modem-sleep模式应用于需要CPU-直工作的场景,如应用于PWM或I2S等。在保持Wi-Fi连接时,如果没有数据传输,可根据802.11 标准(如U-APSD),关闭WI-FI Modem路来省电。例如,在DTIM3 时,保持300ms的睡眠间隔,每次唤醒3 ms来接收AP的Beacon包,则电流约为15 mA。
2.Light-Sleep模式
CPU及所有外设暂停运行。任何唤醒事件(MAC、主机RTC定时器或外部中断)都会唤醒主控,射频随WiFi协议定时唤醒。
Light- sleep模式用于CPU可暂停的应用,如Wi-Fi开关。在保持Wi-Fi 连接时,如果没有数据传输,可根据802.11标准(U-APSD),关闭Wi-Fi Modem并暂停CPU来省电。例如,在DTIM3时,保持300 ms的睡眠间隔,每次唤醒3ms来接收AP的Beacon包,则电流约为0.9 mA。
3.Deep-Sleep睡眠
仅RTC处于工作状态,芯片的其他部分掉电。
Deep-sleep模式应用于需要Wi-Fi连接的场景。对于很长时间才发送一次数据包的应用(如每100秒测一次温度的传感器),每300s醒来后需0.3s~1s连上AP,则整体平均电流小于1mA。电流20uA是在2.5V下得到的。


推荐阅读
  • 为何Compose与Swarm之后仍有Kubernetes的诞生?
    探讨在已有Compose和Swarm的情况下,Kubernetes是如何以其独特的设计理念和技术优势脱颖而出,成为容器编排领域的领航者。 ... [详细]
  • Asynchronous JavaScript and XML (AJAX) 的流行很大程度上得益于 Google 在其产品如 Google Suggest 和 Google Maps 中的应用。本文将深入探讨 AJAX 在 .NET 环境下的工作原理及其实现方法。 ... [详细]
  • Python3爬虫入门:pyspider的基本使用[python爬虫入门]
    Python学习网有大量免费的Python入门教程,欢迎大家来学习。本文主要通过爬取去哪儿网的旅游攻略来给大家介绍pyspid ... [详细]
  • 吴石访谈:腾讯安全科恩实验室如何引领物联网安全研究
    腾讯安全科恩实验室曾两次成功破解特斯拉自动驾驶系统,并远程控制汽车,展示了其在汽车安全领域的强大实力。近日,该实验室负责人吴石接受了InfoQ的专访,详细介绍了团队未来的重点方向——物联网安全。 ... [详细]
  • MySQL InnoDB 存储引擎索引机制详解
    本文深入探讨了MySQL InnoDB存储引擎中的索引技术,包括索引的基本概念、数据结构与算法、B+树的特性及其在数据库中的应用,以及索引优化策略。 ... [详细]
  • 流处理中的计数挑战与解决方案
    本文探讨了在流处理中进行计数的各种技术和挑战,并基于作者在2016年圣何塞举行的Hadoop World大会上的演讲进行了深入分析。文章不仅介绍了传统批处理和Lambda架构的局限性,还详细探讨了流处理架构的优势及其在现代大数据应用中的重要作用。 ... [详细]
  • ArcBlock 发布 ABT 节点 1.0.31 版本更新
    2020年11月9日,ArcBlock 区块链基础平台发布了 ABT 节点开发平台的1.0.31版本更新,此次更新带来了多项功能增强与性能优化。 ... [详细]
  • Spring Security基础配置详解
    本文详细介绍了Spring Security的基础配置方法,包括如何搭建Maven多模块工程以及具体的安全配置步骤,帮助开发者更好地理解和应用这一强大的安全框架。 ... [详细]
  • 视觉Transformer综述
    本文综述了视觉Transformer在计算机视觉领域的应用,从原始Transformer出发,详细介绍了其在图像分类、目标检测和图像分割等任务中的最新进展。文章不仅涵盖了基础的Transformer架构,还深入探讨了各类增强版Transformer模型的设计思路和技术细节。 ... [详细]
  • 服务器虚拟化存储设计,完美规划储存与资源,部署高性能虚拟化桌面
    规划部署虚拟桌面环境前,必须先估算目前所使用实体桌面环境的工作负载与IOPS性能,并慎选储存设备。唯有谨慎估算贴近实际的IOPS性能,才能 ... [详细]
  • 本文详细介绍了如何在 Ubuntu 14.04 系统上搭建仅使用 CPU 的 Caffe 深度学习框架,包括环境准备、依赖安装及编译过程。 ... [详细]
  • MITM(中间人攻击)原理及防范初探(二)
    上一篇文章MITM(中间人攻击)原理及防范初探(一)给大家介绍了利用ettercap进行arp欺骗及劫持明文口令,后来我发现好友rootoorotor的文章介绍比我写的更透彻,所以基础利用大家可以参看 ... [详细]
  • Fiddler 安装与配置指南
    本文详细介绍了Fiddler的安装步骤及配置方法,旨在帮助用户顺利抓取用户Token。文章还涵盖了一些常见问题的解决方案,以确保安装过程顺利。 ... [详细]
  • 在Android应用开发过程中,开发者经常遇到诸如CPU使用率过高、内存泄漏等问题。本文将介绍几种常用的命令及其应用场景,帮助开发者有效定位并解决问题。 ... [详细]
  • Zabbix自定义监控与邮件告警配置实践
    本文详细介绍了如何在Zabbix中添加自定义监控项目,配置邮件告警功能,并解决测试告警时遇到的邮件不发送问题。 ... [详细]
author-avatar
小小寒沙
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有